#ifndef STORAGE_LEVELDB_BLOOM_FILTER_HASH_H
#define STORAGE_LEVELDB_BLOOM_FILTER_HASH_H

#include "bloom_filter.h"

namespace leveldb {


struct BloomFilterHash {
  typedef uint32_t (*HashFunction)(const Slice&); 

  const size_t kHashCount;
  HashFunction *functions;     

  BloomFilterHash();
  virtual ~BloomFilterHash();

  static void SetBits(const BloomFilterHash& handle, char* bits, size_t len, const Slice& key);

  static bool MaybeExist(const BloomFilterHash& handle, const char* bits, size_t len, const Slice& key);
};

}

#endif

